Inside Macintosh: QuickTime Components

| Previous | Chapter contents | Chapter top | Section top |

Summary of Movie Data Exchange Components

C Summary

Constants

/* component type values */
#define MovieImportType 'eat '                  /* movie data import */
#define MovieExportType 'spit'                  /* movie data export */
/*&nsp; componentFlags values for movie import and movie export components */
enum {
    canMovieImportHandles                   = 1,    /* can import from handles */
    canMovieImportFiles                     = 2,    /* can import from files */
    hasMovieImportUserInterface             = 4,    /* import has user interface */
    canMovieExportHandles                   = 8,    /* can export to handles */
    canMovieExportFiles                     = 16,   /* can export to files */
    hasMovieExportUserInterface             = 32,   /* export has user interface */
    dontAutoFileMovieImport                 = 64    /* do not automatically import
                                                        movie files */
};
/*  flags for MovieImportHandle and MovieImportFile */
enum {
    movieImportCreateTrack                  = 1,    /* create a new track */
    movieImportInParallel                   = 2,    /* paste imported data */
    movieImportMustUseTrack                 = 4     /* use specified track */
};
enum {
    movieImportResultUsedMultipleTracks = 8,                /* component used several
                                                                tracks */
};
enum {
    /* movie data import components */
    kMovieImportHandleSelect                            = 1,    /* import from handle */
    kMovieImportFileSelect                              = 2,    /* import from file */
    kMovieImportSetSampleDurationSelect                 = 3,    /* set sample duration */
    kMovieImportSetSampleDescriptionSelect = 4,                 /* set sample description */
    kMovieImportSetMediaFileSelect                      = 5,    /* set media file */
    kMovieImportSetDimensionsSelect                     = 6,    /* set track dimensions */
    kMovieImportSetChunkSizeSelect                      = 7,    /* set chunk size */
    kMovieImportSetProgressProcSelect                   = 8,    /* set progress func */
    kMovieImportSetAuxiliaryDataSelect                  = 9,    /* set additional data */
    kMovieImportSetFromScrapSelect                      = 10,   /* data from scrap */
    kMovieImportDoUserDialogSelect                      = 11,   /* invoke user dialog */
    kMovieImportSetDurationSelect                       = 12    /* set paste duration */
    
    /* movie data export components */
    kMovieExportToHandleSelect                      = 128,  /* export to handle */
    kMovieExportToFileSelect                        = 129,  /* export to file */
    kMovieExportDoUserDialogSelect                  = 130,  /* invoke user dialog */
    kMovieExportGetAuxiliaryDataSelect              = 131,/* get additional data */
    kMovieExportSetProgressProcSelect               = 132   /* set progress function */
};

Data Type

typedef ComponentInstance MovieImportComponent, MovieExportComponent;

Functions

Importing Movie Data
pascal ComponentResult MovieImportHandle (MovieImportComponent ci, Handle dataH, Movie theMovie, Track targetTrack, Track *usedTrack, TimeValue atTime, TimeValue *addedDuration, long inFlags, long *outFlags); pascal ComponentResult MovieImportFile (MovieImportComponent ci, const FSSpec *theFile, Movie theMovie, Track targetTrack, Track *usedTrack, TimeValue atTime, TimeValue *addedDuration, long inFlags, long *outFlags);
Configuring Movie Data Import Components
pascal ComponentResult MovieImportSetDuration (MovieImportComponent ci, TimeValue duration); pascal ComponentResult MovieImportSetSampleDuration (MovieImportComponent ci, TimeValue duration, TimeScale scale); pascal ComponentResult MovieImportSetSampleDescription (MovieImportComponent ci, SampleDescriptionHandle desc, OSType mediaType); pascal ComponentResult MovieImportSetMediaFile (MovieImportComponent ci, AliasHandle alias); pascal ComponentResult MovieImportSetDimensions (MovieImportComponent ci, Fixed width, Fixed height); pascal ComponentResult MovieImportSetChunkSize (MovieImportComponent ci, long chunkSize); pascal ComponentResult MovieImportSetProgressProc (MovieImportComponent ci, MovieProgressUPP proc, long refcon); pascal ComponentResult MovieImportSetAuxiliaryData (MovieImportComponent ci, Handle data, OSType handleType); pascal ComponentResult MovieImportSetFromScrap (MovieImportComponent ci, Boolean fromScrap); pascal ComponentResult MovieImportDoUserDialog (MovieImportComponent ci, const FSSpec *theFile, Handle theData, Boolean *canceled);
Exporting Movie Data
pascal ComponentResult MovieExportToHandle (MovieImportComponent ci, Handle dataH, Movie theMovie, Track onlyThisTrack, TimeValue startTime, TimeValue duration); pascal ComponentResult MovieExportToFile (MovieImportComponent ci, const FSSpec *theFile, Movie theMovie, Track onlyThisTrack, TimeValue startTime, TimeValue duration);
Configuring Movie Data Export Components
pascal ComponentResult MovieExportSetProgressProc (MovieImportComponent ci, MovieProgressUPP proc, long refcon); pascal ComponentResult MovieExportGetAuxiliaryData (MovieImportComponent ci, Handle dataH, OSType *handleType); pascal ComponentResult MovieExportDoUserDialog (MovieImportComponent ci, const FSSpec *theFile, Handle theData, Boolean *canceled);

Result Codes

invalidTrack

-2009

Specified track cannot receive imported data

unsupportedAuxiliaryImportData

-2057

Cannot work with specified handle type

badComponentSelector

0x80008002

Function not supported

Pascal Summary

Constants

CONST
{component type values}
    MovieImportType = 'eat '                    {movie data import}
    MovieExportType = 'spit'                    {movie data export}

{componentFlags values for movie import and movie export components}
    canMovieImportHandles                   = 1;    {can import from handles}
    canMovieImportFiles                     = 2;    {can import from files}
    hasMovieImportUserInterface             = 4;    {import has user interface}
    canMovieExportHandles                   = 8;    {can export to handles}
    canMovieExportFiles                     = $10;  {can export to files}
    hasMovieExportUserInterface             = $20;{export has user interface}
    dontAutoFileMovieImport                 = $40;{do not automatically import movie }
                                                    { files}
{flags for MovieImportHandle and MovieImportFile functions}
    movieImportCreateTrack                          = 1;    {create a new track}
    movieImportInParallel                           = 2;    {paste imported data}
    movieImportMustUseTrack                         = 4;    {use specified track}
    movieImportResultUsedMultipleTracks = 8;                {component used several }
                                                            { tracks}
{movie data import components}
    kMovieImportHandleSelect                            = 1;    {import from handle}
    kMovieImportFileSelect                              = 2;    {import from file}
    kMovieImportSetSampleDurationSelect                 = 3;    {set sample duration}
    kMovieImportSetSampleDescriptionSelect = 4;                 {set sample description}
    kMovieImportSetMediaFileSelect                      = 5;    {set media file}
    kMovieImportSetDimensionsSelect                     = 6;    {set track dimensions}
    kMovieImportSetChunkSizeSelect                      = 7;    {set chunk size}
    kMovieImportSetProgressProcSelect                   = 8;    {set progress function}
    kMovieImportSetAuxiliaryDataSelect                  = 9;    {set additional data}
    kMovieImportSetFromScrapSelect                      = $A;   {data from scrap}
    kMovieImportDoUserDialogSelect                      = $B;   {invoke user dialog box}
    kMovieImportSetDurationSelect                       = $C;   {set paste duration}
    {movie data export components}
    kMovieExportToHandleSelect                      = $80;      {export to handle}
    kMovieExportToFileSelect                        = $81;      {export to file}
    kMovieExportDoUserDialogSelect                  = $82;      {invoke user dialog box}
    kMovieExportGetAuxiliaryDataSelect              = $83;      {get additional data}
    kMovieExportSetProgressProcSelect               = $84;      {set progress function}

Data Type

TYPE     MovieImportComponent = ComponentInstance;
    MovieExportComponent = ComponentInstance;

Routines

Importing Movie Data
FUNCTION MovieImportHandle (ci: MovieImportComponent; dataH: Handle; theMovie: Movie; targetTrack: Track; VAR usedTrack: Track; atTime: TimeValue; VAR addedDuration: TimeValue; inFlags: LongInt; VAR outFlags: LongInt): ComponentResult; FUNCTION MovieImportFile (ci: MovieImportComponent; theFile: FSSpec; theMovie: Movie; targetTrack: Track; VAR usedTrack: Track; atTime: TimeValue; VAR addedDuration: TimeValue; inFlags: LongInt; VAR outFlags: LongInt): ComponentResult;
Configuring Movie Data Import Components
FUNCTION MovieImportSetDuration (ci: MovieImportComponent; duration: TimeValue): ComponentResult; FUNCTION MovieImportSetSampleDuration (ci: MovieImportComponent; duration: TimeValue; scale: TimeScale): ComponentResult; FUNCTION MovieImportSetSampleDescription (ci: MovieImportComponent; desc: SampleDescriptionHandle; mediaType: OSType): ComponentResult; FUNCTION MovieImportSetMediaFile (ci: MovieImportComponent; alias: AliasHandle): ComponentResult; FUNCTION MovieImportSetDimensions (ci: MovieImportComponent; width, height: Fixed): ComponentResult; FUNCTION MovieImportSetChunkSize (ci: MovieImportComponent; chunkSize: LongInt): ComponentResult; FUNCTION MovieImportSetProgressProc (ci: MovieImportComponent; proc: ProcPtr; refCon: LongInt): ComponentResult; FUNCTION MovieImportSetAuxiliaryData (ci: MovieImportComponent; data: Handle; handleType: OSType): ComponentResult; FUNCTION MovieImportSetFromScrap (ci: MovieImportComponent; fromScrap: Boolean): ComponentResult; FUNCTION MovieImportDoUserDialog (ci: MovieImportComponent; srcFile: FSSpec; data: Handle; VAR canceled: Boolean): ComponentResult;
Exporting Movie Data
FUNCTION MovieExportToHandle (ci: MovieExportComponent; data: Handle; theMovie: Movie; onlyThisTrack: Track; startTime: TimeValue; duration: TimeValue): ComponentResult; FUNCTION MovieExportToFile (ci: MovieExportComponent; dstFile: FSSpec; theMovie: Movie; onlyThisTrack: Track; startTime: TimeValue; duration: TimeValue): ComponentResult;
Configuring Movie Data Export Components
FUNCTION MovieExportSetProgressProc (ci: MovieExportComponent; proc: ProcPtr; refCon: LongInt): ComponentResult; FUNCTION MovieExportGetAuxiliaryData (ci: MovieExportComponent; dstFile: Handle; VAR handleType: OSType): ComponentResult; FUNCTION MovieExportDoUserDialog (ci: MovieExportComponent; dstFile: FSSpec; data: Handle; VAR canceled: Boolean): ComponentResult;

© 1997 Apple Computer, Inc.

| Previous | Chapter contents | Chapter top | Section top |